home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-11-30 | 1.7 KB | 42 lines | [TEXT/R*ch] |
- Name: CMultStdPopupPane
- Version: 2.0
- Category: classes
- Contributor: Michael Abramowicz <MBABRAMOWICZ@AMHERST.EDU>
- Date: 93-07-06
- TCL-Version: 1.1.2, 1.1.3
- TCL-Language: C, C++
- Copyright: Copyright (C) 1993 Michael Abramowicz. All rights reserved.
-
- A subclass of CStdPopupPane that allows for the same pop-up menu to be
- used twice independently at the same time, either within one window or
- in separate windows.
-
- When you have one pop-up menu that is used more than once within one
- window, you must create a separate pseudo-menu id for each instance
- of the pop-up menu pane. This menu id should not correspond to the
- menu id of any menu resource your application uses. This class
- "tricks" the TCL into using the pseudo-menu id for the menu; it is
- this mechanism which allows several instances of the same menu to
- function independently.
-
- If you use this class, your program must not have any menus whose
- menu id is 5368 or 5369. Deactivated menus’ ids are set to one of
- these values (which I picked completely randomly). This prevents
- the TCL from changing all instances of a pop-up menu pane that
- appears in several different windows when the settings on a single
- such pane are changed.
-
- If you create an instance of this class in a window that is already
- activated, you must activate the menu manually so that it works
- correctly.
-
- This class relies on the inner workings of the CBartender class.
- Changes in CBartender in v. 1.1.3 of the TCL required a major
- reworking of this class. Thus, this class will NOT work with
- v. 1.1.2 or earlier of the TCL. (The problem is related to how
- the TCL deals with an attempt to add the same menu twice to
- the bartender.)
-
- It would be easy to modify this class to work with arrow-pop-up
- panes rather than standard ones.
-